package com.dzx.design.behavioral.interpreter;

import org.apache.commons.lang3.StringUtils;

/**
 * @author dzx
 * @ClassName:
 * @Description:
 * @date 2019年08月14日 14:05:54
 */
public class OperatorUtil {

    /**
     * 判断是否是+ 和 * 操作符
     *
     * @param str
     * @return
     */
    public static boolean isOperator(String str) {
        return (StringUtils.equals(str, "+") || StringUtils.equals(str, "*")) ? true : false;
    }


    public static Interpreter getExpressionObject(Interpreter firstExpression, Interpreter secondExpression, String symbol) {
        if (StringUtils.equals("+", symbol)) {
            return new AddInterpreter(firstExpression, secondExpression);
        } else if (StringUtils.equals("*", symbol)) {
            return new MultiInterpreter(firstExpression, secondExpression);
        }
        return null;

    }
}
